Data

Set up data for NMDS

  • split community matrix into two dataframes- one for grouping variables and one for species biomass
  • calculate dissimilarity matrix with Bray-Curtis distances
#set up final grouping data into dataframe
ME_group_data<-trawl_data_arrange[, c(1,2,3,55,56,57,58)]
ME_NMDS_data<-as.matrix(trawl_data_arrange[,4:53])

#calculate the distance matrix
ME_NMDS_distance<- vegdist(ME_NMDS_data, method="bray")

Run the NMDS and extract scores

  • change in community composition
  • uses rank order
  • stress < 0.2 is good, < 0.1 is great, <0.05 is excellent representation in reduced dimensions
ME_NMDS=metaMDS(ME_NMDS_distance, # Our community-by-species matrix
                k=2, # The number of reduced dimensions
                method="bray",
                trymax=200) #increase iterations
## Run 0 stress 0.1621597 
## Run 1 stress 0.1662396 
## Run 2 stress 0.1626536 
## ... Procrustes: rmse 0.01054903  max resid 0.1362254 
## Run 3 stress 0.1790456 
## Run 4 stress 0.1666048 
## Run 5 stress 0.1659049 
## Run 6 stress 0.1621603 
## ... Procrustes: rmse 0.0002328049  max resid 0.002905865 
## ... Similar to previous best
## Run 7 stress 0.1784884 
## Run 8 stress 0.1742627 
## Run 9 stress 0.1662399 
## Run 10 stress 0.1621601 
## ... Procrustes: rmse 0.0002492592  max resid 0.003221247 
## ... Similar to previous best
## Run 11 stress 0.1742638 
## Run 12 stress 0.174263 
## Run 13 stress 0.1741766 
## Run 14 stress 0.1661965 
## Run 15 stress 0.1659039 
## Run 16 stress 0.162161 
## ... Procrustes: rmse 0.0001456678  max resid 0.001623482 
## ... Similar to previous best
## Run 17 stress 0.1661067 
## Run 18 stress 0.1659045 
## Run 19 stress 0.1621601 
## ... Procrustes: rmse 0.0001682695  max resid 0.002144003 
## ... Similar to previous best
## Run 20 stress 0.1660781 
## *** Solution reached
#extract NMDS scores for ggplot
data.scores = as.data.frame(scores(ME_NMDS))
#add columns to data frame 
data.scores$Stratum = trawl_data_arrange$Stratum
data.scores$Region = trawl_data_arrange$Region
data.scores$Year = trawl_data_arrange$Year
data.scores$Season= trawl_data_arrange$Season
data.scores$Year_groups= trawl_data_arrange$YEAR_GROUPS
data.scores$Year_decades= trawl_data_arrange$YEAR_DECADES
data.scores$Region_new=trawl_data_arrange$REGION_NEW
data.scores$Region_year=trawl_data_arrange$REGION_YEAR
data.scores$Season_year=trawl_data_arrange$SEASON_YEAR

Plots

Region

Time

Season